#{$all-buttons},
.button {
  appearance: none;
  background-color: $primary-color;
  border: 0;
  border-radius: $base-border-radius;
  color: $dark-gray-color;
  cursor: pointer;
  display: inline-block;
  font-family: $base-font-family;
  font-size: $base-font-size;
  -webkit-font-smoothing: antialiased;
  font-weight: $font-weight-bold;
  line-height: 1;
  padding: $small-spacing $base-spacing;
  text-decoration: none;
  @include transition(background-color $base-duration $base-timing);
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;

  &:hover,
  &:focus {
    background-color: shade($primary-color, 20%);
    color: $white-color;
  }

  &:disabled {
    cursor: not-allowed;
    opacity: 0.5;

    &:hover {
      background-color: $primary-color;
    }
  }

  &.button-ghost {
    background-color: transparent;
    border: 1px solid #fff;

    &:hover,
    &:focus,
    &:active {
      background-color: rgba($white-color, .1);
    }
  }

  &.button-julia-red {
    background-color: transparent;
    border: 1px solid #000;

    &:hover,
    &:focus,
    &:active {
      background-color: rgba($julia-red-color, .1);
    }
  }

  &.button-julia-green {
    background-color: transparent;
    border: 1px solid #000;

    &:hover,
    &:focus,
    &:active {
      background-color: rgba($julia-green-color, .1);
    }
  }
}
